<?php
namespace V1\Controller;

/**
 * 活动列表
 */

class TaskController extends BaseController {
    
     protected $errorCode = array(
        'sign' => array(
            '-1'=>'用户token失效或有误',
            '-2'=>'该用户签到失败',
            '-3'=>'今日已签到，明日再来吧！',
            '-10'=>'该任务已失效',
        ),
        'index' => array(
            '-1'=>'用户token失效或有误',
            '-10'=>'数据不存在',
        ),
        'register' => array(
            '-1'=>'用户token失效或有误',
            '-2'=>'该用户注册获取奖励失败',
            '-3'=>'用户已获取注册奖励！',
            '-10'=>'该任务已失效',
        ),
        'join_gul' => array(
            '-1'=>'用户token失效或有误',
            '-2'=>'用户获取首次参与猜涨跌游戏奖励失败',
            '-3'=>'用户已获取首次参与猜涨跌游戏奖励！',
            '-4'=>'用户尚未参与猜涨跌游戏',
            '-10'=>'该任务已失效',
        ),
         'join_extremun' => array(
            '-1'=>'用户token失效或有误',
            '-2'=>'用户获取首次参与涨跌幅游戏奖励失败',
            '-3'=>'用户已获取首次参与涨跌幅游戏奖励',
            '-4'=>'用户尚未参与涨跌幅游戏',
            '-10'=>'该任务已失效',
        ),
        
    );

    /**
     * 用户签到
     */
    public function sign(){
        $data = array("code" => 0,"msg" => "","info"=>array());
        
        list($uid,$user_token) = $this->checkUserToken();
        
        $task_type = strtolower(ACTION_NAME);
        
        $task = $this->getTask($task_type);
        empty($task) && $this->responseError('-10');
   
        $result = D('UserTask')->add_sign($task['id'],$uid,$task_type);
        $result < 0  && $this->responseError($result);
        
        add_money_log($uid, $task['money'], 0, 4, '签到奖励');
        
        $data['msg']="今日签到成功获取{$task['money']}元奖励";
        $this->responseResult($data);
    }
//    /**
//     * 用户注册
//     */
//    public function register(){
//        
//        $data = array("code" => 0,"msg" => "","info"=>array());
//        
//        list($uid,$user_token) = $this->checkUserToken();
//        
//        $task_type = strtolower(ACTION_NAME);
//    
//        $task = $this->getTask($task_type);
//        empty($task) && $this->responseError('-10');
//   
//        $result = D('UserTask')->add_user_register($task['id'],$uid,$task_type);
//        $result < 0  && $this->responseError($result);
//        
//        add_task($uid, $task['money'], 0, $task_type, '注册奖励');
//        
//        $data['msg']="注册成功获取{$task['money']}元奖励";
//        $this->responseResult($data);
//    }
//    /**
//     * 首次参与猜涨跌
//     */
//    public function join_gul(){
//         $data = array("code" => 0,"msg" => "","info"=>array());
//        
//        list($uid,$user_token) = $this->checkUserToken();
//        
//        $task_type = strtolower(ACTION_NAME);
//    
//        $task = $this->getTask($task_type);
//        empty($task) && $this->responseError('-10');
//   
//        $result = D('UserTask')->add_join_gul($task['id'],$uid,$task_type);
//        $result < 0  && $this->responseError($result);
//        
//        add_task($uid, $task['money'], 0, $task_type, '首次参与猜涨跌奖励');
//        
//        $data['info']="首次参与猜涨跌成功获取{$task['money']}元奖励";
//        $this->responseResult($data);
//    }
//    /**
//     * 首次参与涨跌幅
//     */
//    public function  join_extremun(){
//         $data = array("code" => 0,"msg" => "","info"=>array());
//        
//        list($uid,$user_token) = $this->checkUserToken();
//        
//        $task_type = strtolower(ACTION_NAME);
//        $task = $this->getTask($task_type);
//        empty($task) && $this->responseError('-10');
//
//        $result = D('UserTask')->add_join_extremun($task['id'],$uid,$task_type);
//        $result < 0  && $this->responseError($result);
//        
//        add_task($uid, $task['money'], 0, $task_type, '首次参与涨跌幅奖励');
//        
//        $data['info']="首次参与涨跌幅成功获取{$task['money']}元奖励";
//        $this->responseResult($data);
//    }
    /**
     * 邀请好友
     */
    public function invite(){
    }
    protected function getTask($task_type){
        
        $where =array(
            'task_type'=>$task_type,
            'status'=>1,
            'deadline'=>array(array('eq',0),array('gt',NOW_TIME),'or')
            );
        
        $task = M('Task')->where($where)->cache(true,3600)->find();
        return $task;
    }
    
    
}